Automated Recovery and Visualization of Test-to-Code Traceability (TCT) Links: An Evaluation (2021)
hr.icon
三行まとめ
TCT の visualize により、ユーザーは素早く production code から test code を探すことができるようになったよ
(新たな traceability recover を提案するものではない)
hr.icon
Contribution
1) Build an informative and generic visualization tool that combines multiple automated sources of traceability links and improves program comprehension, browsing, and maintenance.
2) Examine the tool usability and assessing users’ interest.
3) Display the hierarchical relationships of source code and units test inferred from different sources for better system evolution analysis.
Motivation
hr.icon
どんなもの?
https://scrapbox.io/files/60d83b2de70b92001dd26423.png
We combined different traceability recovery methods that automatically retrieve the links, we also provide visualization support to these links using a hierarchical tree visualization technique.
Directly identify a specific item in a traced program to show its related links.
Visualize a class/method hierarchy tree of a program.
Detect and visualize a class dependency on test cases.
Retrieve the traceability links for a specific test case from multiple sources automatically and visualize the retrieved links in an efficient way.
Support an overall overview of the program components by providing detailed statistics and visualization of these components.
Save time needed in finding TCT links in a project efficiently and make the project cost-effective.
あんまり visualization する意義感じられないんだがなぁ
live programming との組み合わせのほうが楽しい感じはする
future work
Visualization system can be extended to support further programming languages such as Java, C++, Python.
Implement our approach with further TCT links recovery approaches.
Extend our visualization system to include one overall overview visualization of all traceability links for the whole project which, in turn, may need to support other types of visualization techniques.
hr.icon
先行研究と比べてどこがすごい?
hr.icon
技術や手法のキモはどこ?
hr.icon
どうやって有効だと検証した?
hr.icon
議論はある?
hr.icon
関連論文は?
TRACEABILITY LINK RECOVERY TECHNIQUES
the most often utilized and discussed work initially proposed
NC など複数の手法を組み合わせて精度向上
traceability links are recovered using dynamic slicing and conceptual coupling techniques. TCT links are derived using assert statements, then, tested classes are identified in two steps: the first step identifies the started tested sets (STS) using dynamic slicing. In the second step the candidate tested set (CTS) are produced by filtering STS using conceptual coupling between identified classes and the unit test.
そんなに精度が高くないことがわかってしまった
Gergely et al. 29 did not explicitly extract the traceability links of test and code, but they used clustering instead. The clustering is performed with static analysis and dynamic analysis.